<text>Or, you can use the File Transfer Manager with other connection service (e.g. serial driver, MacTCP driver, etc.) to create a file transfer application.</text>
</content>
<content>
<layer>background</layer>
<id>2</id>
<text>Applications</text>
</content>
<content>
<layer>background</layer>
<id>8</id>
<text>13 of 13</text>
</content>
<name></name>
<script>-- The visual effect for next and prev
wipe left, dissolve
</script>
</card>
card_9135.xml
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE card PUBLIC "-//Apple, Inc.//DTD card V 2.0//EN" "" >
<text>There are configuration routines for your application to easily configure a file transfer tool, either with the use of a dialog box or programmatically with a configuration string interface.</text>
</content>
<content>
<layer>background</layer>
<id>2</id>
<text>Utilities</text>
</content>
<content>
<layer>background</layer>
<id>8</id>
<text>10 of 13</text>
</content>
<name></name>
<script>--
on openCard
disItem "Utilities"
end openCard
--
on closeCard
enaItem "Utilities"
end closeCard
-- The visual effect for next and prev
wipe left, wipe right
</script>
</card>
card_7756.xml
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE card PUBLIC "-//Apple, Inc.//DTD card V 2.0//EN" "" >
<text>Multiple instances of the same tool within the application are allowed by the File Transfer Manager. This means that multiple records of the same tool can exist at the same time.
</text>
</content>
<content>
<layer>background</layer>
<id>2</id>
<text>File Transfer Record</text>
</content>
<content>
<layer>background</layer>
<id>8</id>
<text>9 of 13</text>
</content>
<name></name>
<script>-- The visual effect for next and prev
wipe left, wipe right
</script>
</card>
card_7587.xml
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE card PUBLIC "-//Apple, Inc.//DTD card V 2.0//EN" "" >
<text>The File Transfer Record is protocol independent. That is, it does not have any public information that is specific to a certain protocol. In this way, the application doesn't have to concern itself with the protocol that is being used.</text>
</content>
<content>
<layer>background</layer>
<id>2</id>
<text>File Transfer Record</text>
</content>
<content>
<layer>card</layer>
<id>1</id>
<text>TYPE
FTHandle = ^FTPtr;
FTPtr = ^FTRecord;
FTRecord = PACKED RECORD
procID : INTEGER;
flags : FTFlags;
errCode : FTErr;
refCon : LONGINT;
userData : LONGINT;
defProc : ProcPtr;
config : Ptr;
oldConfig : Ptr;
environsProc : ProcPtr;
reserved1 : LONGINT;
reserved2 : LONGINT;
ftPrivate : Ptr;
sendProc : ProcPtr;
recvProc : ProcPtr;
writeProc : ProcPtr;
readProc : ProcPtr;
owner : WindowPtr;
direction : FTDirection;
theReply : SFReply;
writePtr : LONGINT;
readPtr : LONGINT;
theBuf : ^char;
bufSize : LONGINT;
autoRec : Str255;
attributes : FTAttributes;
END;</text>
</content>
<content>
<layer>background</layer>
<id>8</id>
<text>8 of 13</text>
</content>
<name></name>
<script>--
on closeCard
set scroll of cd fld "file transfer record" to 0
end closeCard
-- The visual effect for next and prev
wipe left, dissolve
</script>
</card>
card_7397.xml
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE card PUBLIC "-//Apple, Inc.//DTD card V 2.0//EN" "" >
<text>The File Transfer Record is the data structure that stores all the specifics about the file transfer: things like what tool the manager should be using, should custom menus be displayed when transmitting files, etc.
</text>
</content>
<content>
<layer>card</layer>
<id>1</id>
<text>TYPE
FTHandle = ^FTPtr;
FTPtr = ^FTRecord;
FTRecord = PACKED RECORD
procID : INTEGER;
flags : FTFlags;
errCode : FTErr;
refCon : LONGINT;
userData : LONGINT;
defProc : ProcPtr;
config : Ptr;
oldConfig : Ptr;
environsProc : ProcPtr;
reserved1 : LONGINT;
reserved2 : LONGINT;
ftPrivate : Ptr;
sendProc : ProcPtr;
recvProc : ProcPtr;
writeProc : ProcPtr;
readProc : ProcPtr;
owner : WindowPtr;
direction : FTDirection;
theReply : SFReply;
writePtr : LONGINT;
readPtr : LONGINT;
theBuf : ^char;
bufSize : LONGINT;
autoRec : Str255;
attributes : FTAttributes;
END;</text>
</content>
<content>
<layer>background</layer>
<id>2</id>
<text>File Transfer Record</text>
</content>
<content>
<layer>background</layer>
<id>8</id>
<text>7 of 13</text>
</content>
<name></name>
<script>--
on openCard
disItem "File Transfer Record"
end openCard
--
on closeCard
set scroll of cd fld "file transfer record" to 0
enaItem "File Transfer Record"
end closeCard
-- The visual effect for next and prev
dissolve, wipe right</script>
</card>
card_6205.xml
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE card PUBLIC "-//Apple, Inc.//DTD card V 2.0//EN" "" >
<text>After the tool performs the task, it sends any relevant parameters and return codes to the File Transfer Manager, which forwards them to the application.
</text>
</content>
<content>
<layer>background</layer>
<id>2</id>
<text>How it does it</text>
</content>
<content>
<layer>background</layer>
<id>8</id>
<text>6 of 13</text>
</content>
<name></name>
<script>-- *** animate the arrow
on cdAnim
choose line tool
set dragSpeed to 40
drag from 463,113 to 463,82
drag from 462,82 to 403,82
drag from 403,83 to 403,101
drag from 381,105 to 381,46
drag from 380,46 to 319,46
drag from 319,47 to 319,56
drag from 296,59 to 296,46
drag from 295,46 to 275,46
choose browse tool
end cdAnim
--
on closeCard
choose select tool
doMenu "Revert"
choose browse tool
end closeCard
-- The visual effect for next and prev
wipe left, dissolve
</script>
</card>
card_5638.xml
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE card PUBLIC "-//Apple, Inc.//DTD card V 2.0//EN" "" >
<text>The application calls the File Transfer Manager routines to perform a particular task (e.g. sending a file, receiving a file, monitoring status, etc.)</text>
</content>
<content>
<layer>background</layer>
<id>2</id>
<text>How it does it</text>
</content>
<content>
<layer>background</layer>
<id>8</id>
<text>3 of 13</text>
</content>
<name></name>
<script>-- *** animate the arrow
on cdAnim
traceArrow
choose browse tool
end cdAnim
--
on traceArrow
choose line tool
set dragSpeed to 35
drag from 204,203 to 204,219
drag from 205,219 to 296,219
drag from 296,218 to 296,144
end traceArrow
--
on openCard
disItem "How it does it"
end openCard
--
on closeCard
choose select tool
doMenu "Revert"
choose browse tool
enaItem "How it does it"
end closeCard
-- The visual effect for next and prev
wipe right, wipe left
</script>
</card>
card_4321.xml
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE card PUBLIC "-//Apple, Inc.//DTD card V 2.0//EN" "" >
<text>The File Transfer Manager provides protocol independent file transfer services so your application doesn't have to take into account the underlying file transfer protocols.</text>